#ifndef _HELIX_WIN32_EXCEPTION_HANDLER_SUITE_H_
#define _HELIX_WIN32_EXCEPTION_HANDLER_SUITE_H_

// ExHandlerTestSuite.h
#include <cxxtest/TestSuite.h>
#include "../Helix/HObject.h"
#include "../Helix/Util/PointerCheck.h"
#include "../Helix/Util/WinExHandler.h"

#include <exception>

using namespace helix;

class Win32ExHandlerTest : public CxxTest::TestSuite
{
public:
	void setUp()
	{
		printf("\n\nWin32ExHandlerTest::");
		
	}

	void tearDown()
	{
		
	}

	void testAccessViolationException( void )
	{
		printf("testAccessViolationException");
		//For some reason, we can't catch the exceptions thrown by the win32 exception handler in 
		//the unit testing framework.  However, if the exception is thrown in the library, it can
		//be caught there by the exception handler.  Take a look at the PointerCheck.cpp file to 
		//see an example.
		TS_ASSERT(true);
	}

};

#endif